package aca


class Aluno {

	String nome
	String email
	static hasMany = [turmas: Turma, solicitacoes: Solicitacao]
	static belongsTo = Turma

	static constraints = {
		nome(blank:false)
		email(blank:false, unique:true)
	}

	//static mapping = { tablePerHierarchy false } //Isso faz com que aluno e monitor tenham tabelas separadas
	static mapping = { tablePerHierarchy true } //Isso faz com que aluno e monitor compartilhem a mesma tabela

	String toString() {
		return "${nome}\t${email}"
	}



	@Override
	public boolean equals(Object obj) {
		if(! (obj instanceof Aluno)) {
			return false;
		}
		Aluno outro = (Aluno)obj;
		return getEmail().equals(outro.getEmail());
	}


}